package com.rede.didiok.admin.entity;

import java.util.List;

import lombok.Data;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.rede.didiok.common.entity.SuperEntity;

/**
 * 管理员表
 * 
 * @author Rede
 * @email didiok@foxmail.com
 * @date 2023-08-07 18:21:17
 */
@Data
@TableName("a_category_menu")
public class CategoryMenuEntity extends SuperEntity<CategoryMenuEntity> implements Comparable<CategoryMenuEntity>  {
	private static final long serialVersionUID = 1L;

	/**
	 * 菜单名称
	 */
	private String name;
	/**
	 * 菜单级别
	 */
	private Integer menuLevel;
	/**
	 * 简介
	 */
	private String summary;
	/**
	 * 父uid
	 */
	private String parentUid;
	/**
	 * url地址
	 */
	private String url;
	/**
	 * 图标
	 */
	private String icon;
	/**
	 * 排序字段，越大越靠前
	 */
	private Integer sort;
	/**
	 * 是否显示 1:是 0:否
	 */
	private Integer isShow;
	/**
	 * 菜单类型 0: 菜单   1: 按钮
	 */
	private Integer menuType;
	/**
	 * 是否跳转外部链接 0：否，1：是
	 */
	private Integer isJumpExternalUrl;

	// 以下字段不存入数据库，封装为了方便使用

	/**
	 * 父菜单
	 */
	@TableField(exist = false)
	private CategoryMenuEntity parentCategoryMenu;

	/**
	 * 子菜单
	 */
	@TableField(exist = false)
	private List<CategoryMenuEntity> childCategoryMenu;

	@Override
	public int compareTo(CategoryMenuEntity o) {

		if (this.sort >= o.getSort()) {
			return -1;
		}
		return 1;
	}
}
